package com.ambition.demo.kafka.dto;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.validation.annotation.Validated;

import java.util.Date;

/**
 * @Description: 排查任务记录表
 * @Author: zhouzhengai
 * @Date: 2022-03-12
 */
@Validated
@Data
@TableName("tb_dgs_base_measures_task_group_record")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
//@ApiModel(value = "排查任务记录表", description = "排查任务记录表")
public class TbDgsBaseMeasuresTaskGroupRecord {

    /**
     * 任务组id
     */
    @TableId(type = IdType.NONE)
//    @ApiModelProperty(value = "任务组id", required = true)

    private String id;
    /**
     * 所属部门id
     */
//    @ApiModelProperty(value = "所属部门id")

    private String groupId;
    /**
     * 任务id
     */
//    @ApiModelProperty(value = "任务id")

    private String taskId;
    /**
     * 排查状态(0:未排查 | 1:已排查)
     */
//    @ApiModelProperty(value = "排查状态(0:未排查 | 1:已排查)")

    private String patrolStatus;
    /**
     * 所属企业编码
     */
//    @ApiModelProperty(value = "所属企业编码")

    private String companyCode;
    /**
     * 所属企业Id
     */
//    @ApiModelProperty(value = "所属企业Id")

    private String companyId;
    /**
     * 排查结果（正常：0；存在隐患:1；未排查：2；其他：3；）
     */
//    @ApiModelProperty(value = "排查结果（正常：0；存在隐患:1；未排查：2；其他：3；）")

    private String checkStatus;
    /**
     * 任务开始时间
     */
//    @ApiModelProperty(value = "任务开始时间 格式：yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date taskBeginTime;
    /**
     * 任务结束时间
     */
//    @ApiModelProperty(value = "任务结束时间 格式：yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date taskEndTime;
    /**
     * 是否已删除
     */
//    @ApiModelProperty(value = "是否已删除 ", required = true)

    private Boolean deleted;
    /**
     * 创建人
     */
//    @ApiModelProperty(value = "创建人Id 实际存储名称：create_by", required = true)
    @TableField(value = "create_by")

    private String createById;
    /**
     * 创建人手机号
     */
//    @ApiModelProperty(value = "创建人手机号")

    private String createByMobile;
    /**
     * 创建时间
     */
//    @ApiModelProperty(value = "创建时间 格式：yyyy-MM-dd HH:mm:ss", required = true)
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")

    private Date createTime;
    /**
     * 更新人
     */
//    @ApiModelProperty(value = "更新人Id 实际存储名称：update_by")
    @TableField(value = "update_by")

    private String updateById;
    /**
     * 更新人手机号
     */
//    @ApiModelProperty(value = "更新人手机号")

    private String updateByMobile;
    /**
     * 更新时间（排查时间）
     */
//    @ApiModelProperty(value = "更新时间（排查时间）格式：yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    /**
     * 排查任务分钟数 （结束-开始）
     */
//    @ApiModelProperty(value = "排查任务分钟数 （结束-开始）")

    private Integer taskCycleMinute;
//    /**
//     * 纬度
//     */
//    @ApiModelProperty(value = "纬度")
//    @TableField(value = "lat")
//    private java.math.BigDecimal x;
//    /**
//     * 经度
//     */
//    @ApiModelProperty(value = "经度")
//    @TableField(value = "lon")
//    private java.math.BigDecimal y;
    /**
     * 是否有效范围  是：0；否：1
     */
//    @ApiModelProperty(value = "是否有效范围  是：0；否：1")

    private String rangeType;
    /**
     * 实际定位类型 0 gps 2 第三方
     */
//    @ApiModelProperty(value = "实际定位类型 0 gps 2 第三方")

    private String locationType;
    /**
     * 扫码时间
     */
//    @ApiModelProperty(value = "扫码时间 格式：yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date scanTime;
    /**
     * 任务处理时间是否有效  有效：0，无效：1
     */
//    @ApiModelProperty(value = "任务处理时间是否有效  有效：0，无效：1")

    private String scanType;
    /**
     * 用户扫码时间
     */
//    @ApiModelProperty(value = "用户扫码时间 格式：yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date userCheckTime;
    /**
     * 用户任务时间
     */
//    @ApiModelProperty(value = "用户任务时间  格式：yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date taskSecond;
    /**
     * 排查人员ID(employee)
     */
//    @ApiModelProperty(value = "排查人员ID(employee)")
//    private String userId;
    /**
     * 租户id
     */
//    @ApiModelProperty(value = "租户id")

    private String customerId;


//    @ApiModelProperty(value = "创建人姓名 实际存储名称：create_by_name")
    @TableField(value = "create_by_name")

    private String createBy;

//    @ApiModelProperty(value = "修改人姓名 实际存储名称：update_by_name")
    @TableField(value = "update_by_name")

    private String updateBy;


//    @ApiModelProperty(value = "排查人员ID")

    private String employeeId;
//    @ApiModelProperty(value = "排查人姓名")

    private String employeeName;
//    @ApiModelProperty(value = "岗位名称")
    @TableField(value = "post_name")

    private String deptName;
//    @ApiModelProperty(value = "排查周期")

    private String checkCycle;


//    @ApiModelProperty(value = "排查名称")

    private String checkName;
//    @ApiModelProperty(value = "任务组主键，外部接收没有关联关系")
    @TableField(value = "record_group_id")

    private String recordId;

//    @ApiModelProperty(value = "排查部门")

    private String checkDept;
//    @ApiModelProperty(value = "排查部门id")

    private String checkDeptId;

//    @ApiModelProperty(value = "巡检周期")

    private String cycle;
//    @ApiModelProperty(value = "巡检周期单位")

    private String cycleUnit;

//    @ApiModelProperty(value = " 巡检点 名称")

    private String patrolPointName;

//    @ApiModelProperty(value = "同步时间 ")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date syncTime;

//    @ApiModelProperty(value = "国际移动设备识别IMEI。当设备存在多个IMEI时，只上传第一个")
    @TableField(value = "mobile_me")
    private String mobileMe;

//    @ApiModelProperty(value = "是否包保责任人任务，包保任务标志(1是；0否)默认为否，当排查任务中任务类型为主要负责人任务、技术负责人任务、操作负责人任务时，此项为1")
    private String isDefend;


}
